.carousel-container {
    width: 100%;
    height: 100%;
    background-color: rgb(169, 164, 160);
    display: flex;
    justify-content: center;
    align-items: center;
    perspective: 1000px;
}

.carousel-content {
    position: absolute;
    width: 60vw;
    height: 60vw;
    max-width: 380px;
    max-height: 250px;
    top: 200px;
    transform-origin: center;
    transform-style: preserve-3d;
    transform: translateZ(-30vw) rotateY(0);
    animation: carousel 9s infinite cubic-bezier(0.77, 0, 0.175, 1) forwards;
    animation-play-state: running;
}

.carousel-content:hover {
    animation-play-state: paused;
}

@keyframes carousel {

    0%,
    17.5% {
        transform: translateZ(-35vw) rotateY(0);
    }

    27.5%,
    45% {
        transform: translateZ(-35vw) rotateY(-120deg);
    }

    55%,
    72.5% {
        transform: translateZ(-35vw) rotateY(-240deg);
    }

    82.5%,
    100% {
        transform: translateZ(-35vw) rotateY(-360deg);
    }
}

.carousel-item {
    position: absolute;
    width: 60vw;
    height: 40vw;
    max-height: 380px;
    max-width: 500px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
    border-radius: 6px;
    background-size: cover;
    -webkit-box-reflect: below 25px -webkit-linear-gradient(transparent 50%, rgba(255, 255, 255, 0.3));
    transform: rotateY(calc((var(--s) - 1) * 120deg)) translateZ(35vw);
}

